home *** CD-ROM | disk | FTP | other *** search
/ ADA Programming Guide / ADA Programming Guide.iso / ada_gwu / ghdr.h < prev    next >
C/C++ Source or Header  |  1996-01-30  |  4KB  |  159 lines

  1.  
  2. #define TK_BYTE 1
  3. #define TK_WORD 2
  4. #define TK_ADDR 3
  5. #define TK_LONG 4
  6. #define TK_DBLE 5
  7. #define TK_XLNG 6
  8.  
  9. #define MAIN_CS 2    /* code segment number for main code segment */
  10.  
  11.  
  12. #define SLOTS_DATA 1
  13. #define SLOTS_CODE 2
  14. #define SLOTS_EXCEPTION 3
  15. #define SLOTS_DATA_BORROWED 4
  16. #define SLOTS_CODE_BORROWED 5
  17.  
  18. #define SELECT_CODE 0
  19. #define SELECT_DATA 1
  20. #define SELECT_EXCEPTIONS 2
  21.  
  22. #define D_NONE    0
  23. #define D_ALL    1
  24. #define D_INT    2
  25. #define    D_FIX    3
  26. #define D_FLOAT 4
  27. #define D_PSEUDO 5
  28.  
  29. #define A_NONE    0
  30. #define A_BOTH    1
  31. #define    A_LOCAL    2
  32. #define A_GLOBAL 3
  33. #define A_CODE    4
  34. #define    A_PREDEF 5
  35. #define A_EXCEPTION 6
  36. #define A_IMM    7
  37. #define A_ATTR    8
  38. #define A_PSEUDO 9
  39.  
  40. typedef struct Explicit_ref_s {
  41.     short    explicit_ref_seg;
  42.     short    explicit_ref_off;
  43. } Explicit_ref_s;
  44. typedef struct Explicit_ref_s *Explicit_ref;
  45.  
  46. #define TASK_INIT_PROC    1
  47. #define PROC_TEMPLATE    1
  48. #define RETURN_TEMPLATE    2
  49. #define FORMAL_TEMPLATE    1
  50. #define ACTUAL_TEMPLATE    2
  51. #define INIT_SPEC    1
  52. #define INIT_BODY    2
  53. #define INIT_TASKS    3
  54.  
  55. #ifdef EXPORT
  56. #define compiler_error(r)       exit_internal_error()
  57. #define compiler_error_k(r,n)       exit_internal_error()
  58. #define compiler_error_c(r,c)      exit_internal_error()
  59. #define compiler_error_s(r,s)      exit_internal_error()
  60. #endif
  61.  
  62. #define COMPONENT_TYPE(type_name) component_type(type_name)
  63.  
  64. #define DEFAULT_EXPR(obj_name) default_expr(obj_name)
  65.  
  66. #define DESIGNATED_TYPE(acc_typ) designated_type(acc_typ)
  67.  
  68. #define FIELD_NUMBER(x)           MISC(x)
  69.  
  70. #define FIELD_OFFSET(x)      S_OFFSET(x)
  71.  
  72. #define INDEX_TYPES(type_name) index_types(type_name)
  73.  
  74. #define INVARIANT_PART(record) invariant_part(record)
  75.  
  76. #ifdef TBSN
  77. macro NEXT_NODE;                 (NODE_COUNT += 1)                endm;
  78. #endif
  79.  
  80. #define ROOT_TYPE(typ) root_type(typ)
  81.  
  82. #define size_of(typ) TYPE_SIZE(typ)
  83.  
  84. #define USER_WARNING(s1,s2) user_warning(s1,s2)
  85.  
  86. #define USER_INFO(line) user_info(line)
  87.  
  88. #define TO_ERR(line,filename) to_err(line,filename)
  89.  
  90. #define IS_ANCESTOR(na) is_ancestor()
  91.  
  92. #define IS_GENERIC(na) is_generic_gen(na)
  93.  
  94. #define IS_ENUMERATION_TYPE(typ) (nature_root_type(typ) == na_enum)
  95.  
  96. #define CONTAINS_TASK(typ)     MISC(typ)
  97.  
  98. #define F_TO_I(x) x
  99. #define I_TO_F(x) x
  100.  
  101. #define rat_lt(a,b) rat_lss(a,b)
  102.  
  103. #ifdef TBSN
  104. macro AIS_INFO(name);
  105.    [COMP_DATE(name) ,PRE_COMP(name), UNIT_DECL(name), CODE_UNITS(name)]
  106. endm;
  107. #endif
  108.  
  109. #define   SETL                           1
  110. #define   VAXC                           2
  111. #define   IBMPC                          3
  112.  
  113. #define   IBMPC_MAX_INTEGER              +32767
  114. #define   IBMPC_MIN_INTEGER              -32768
  115. #define   IBMPC_MAX_SHORT                +127
  116. #define   IBMPC_MIN_SHORT                -128
  117. #ifdef TBSN
  118. -- these are defined by SEM
  119. #define   ADA_MIN_REAL                   -1.0E30
  120. #define   ADA_MAX_REAL                   +1.0E30
  121. #define   ADA_REAL_DIGITS                 6
  122. #endif
  123.  
  124. #define co_range 0
  125. #define co_digits 1
  126. #define co_delta 2
  127. #define co_discr 3
  128. #define co_array 4
  129. #define co_index 5
  130. #define co_access 6
  131.  
  132. #define   mu_byte             1
  133. #define   mu_word             2
  134. #define   mu_addr             3
  135. #define   mu_long             4
  136. #define   mu_dble             5
  137. #define   mu_xlng             6
  138. #define   mu_fixed1            mu_word  /* check this */
  139. #define   mu_fixed2            mu_dble     /* review this too */
  140.  
  141. #define  WORD_SIZE  32    
  142.  
  143. #define  SFP_SIZE   4
  144.  
  145. #define  max_width  80
  146.  
  147. #define LABEL_SIZE 4
  148. #define LABEL_STATIC_DEPTH 1
  149. #define LABEL_POSITION 2
  150. #define LABEL_PATCHES 3
  151. #define LABEL_EQUAL 4
  152.  
  153. typedef struct Gref_s {
  154.     Symbol gref_sym; /* symbol */
  155.     short  gref_seg; /* segment */
  156.     int    gref_off; /* offset */
  157.     } Gref_s;
  158. typedef struct Gref_s *Gref;
  159.